.add-address {
	min-height: 100vh;
	background-color: $mall-bg-100;
	display: flex;
	flex-direction: column;
	
	.map-wrapper {
		width: 100%;
		height: 400rpx;
		background-color: #fff;
		
		.map {
			width: 100%;
			height: 100%;
		}
	}
	
	.form-wrapper {
		flex: 1;
		padding: 20rpx;
		padding-bottom: calc(120rpx + env(safe-area-inset-bottom));
		
		.form-group {
			background-color: #fff;
			border-radius: $uni-border-radius-base;
			margin-bottom: 20rpx;
			
			.form-item {
				padding: 24rpx 30rpx;
				display: flex;
				align-items: flex-start;
				border-bottom: 1rpx solid $mall-bg-200;
				
				&:last-child {
					border-bottom: none;
				}
				
				.label {
					width: 160rpx;
					font-size: 28rpx;
					color: $mall-text-100;
					padding-top: 6rpx;
				}
				
				:deep(.uv-input) {
					flex: 1;
					.uv-input__input {
						height: 44rpx;
						line-height: 44rpx;
						font-size: 28rpx;
						padding: 0;
					}
				}
				
				.textarea-wrapper {
					flex: 1;
					position: relative;
					
					:deep(.uv-textarea) {
						width: 100%;
						
						.uv-textarea__field {
							font-size: 28rpx;
							padding: 0;
							min-height: 160rpx;
							line-height: 1.6;
						}
					}
					
					.word-count {
						position: absolute;
						right: 0;
						bottom: 8rpx;
						font-size: 24rpx;
						color: $mall-text-200;
					}
				}
			}
			
			.location-item {
				&:active {
					background-color: $mall-bg-100;
				}
				
				.location-wrapper {
					flex: 1;
					display: flex;
					align-items: center;
					justify-content: space-between;
					
					.location-info {
						flex: 1;
						margin-right: 20rpx;
						
						.address {
							font-size: 28rpx;
							color: $mall-text-100;
							margin-bottom: 8rpx;
							display: -webkit-box;
							-webkit-box-orient: vertical;
							-webkit-line-clamp: 2;
							overflow: hidden;
						}
						
						.tip {
							font-size: 24rpx;
							color: $mall-text-200;
						}
					}
					
					.placeholder-wrapper {
						flex: 1;
						display: flex;
						align-items: center;
						gap: 12rpx;
						margin-right: 20rpx;
						
						.placeholder {
							font-size: 28rpx;
							color: $mall-text-200;
						}
					}
				}
			}
			
			.switch-item {
				padding: 24rpx 30rpx;
				display: flex;
				align-items: center;
				justify-content: space-between;
				
				.label {
					font-size: 28rpx;
					color: $mall-text-100;
				}
			}
		}
	}
	
	.placeholder {
		font-size: 28rpx;
		color: $mall-text-200;
	}
	
	.action-bar {
		position: fixed;
		left: 0;
		right: 0;
		bottom: 0;
		background-color: #fff;
		padding: 12rpx 20rpx;
		padding-bottom: calc(12rpx + env(safe-area-inset-bottom));
		box-shadow: 0 -2rpx 20rpx rgba(0, 0, 0, 0.05);
		z-index: 100;
		
		.submit-btn {
			width: 100%;
			height: 80rpx;
			border-radius: $uni-border-radius-base;
			background: linear-gradient(135deg, $mall-primary-100, $mall-primary-200);
			color: #fff;
			font-size: 28rpx;
			font-weight: bold;
			display: flex;
			align-items: center;
			justify-content: center;
			box-shadow: 0 4rpx 12rpx rgba($mall-primary-100, 0.3);
			margin: 0;
			
			&:active {
				transform: scale(0.98);
				opacity: 0.9;
			}
		}
	}
}
